const http = require('http')
const path = require('path')
const fs = require('fs')
const { url } = require('inspector')
// 使用http模块创建server实例    web服务，一个http可以创建n个web服务
const server = http.createServer()
// 使用server对象实例 监听请求事件
server.on('request',(request,response)=>{
    const url = request.url;
    if(url == '/'){
        fs.readFile(path.join(__dirname,"index.html"),(err,data)=>{
            if (err) throw err
            response.setHeader("Content-type","text/html;charset=utf-8")
            // 写入数据
            response.write(data)
            // 最后执行end
            response.end()
        })
    }
    else if(request.url == '/hhh.css'){
        fs.readFile(path.join(__dirname,"hhh.css"),(err,data)=>{
            if(err) throw err
            response.setHeader("Content-type","text/css;charset=utf-8")
            // 写入数据
            response.write(data)
            // 最后执行end
            response.end()
        })
    }
    else if(request.url == '/text'){
        response.setHeader("Content-type","text/text;charset=utf-8")
        // 写入数据
        response.write(data)
        // 最后执行end
        response.end()
    }
    else if(request.url == '/demo1.js'){
        fs.readFile(path.join(__dirname,"demo1.js"),(err,data)=>{
            if(err) throw err
                
            response.setHeader("Content-type","text/javascript;charset=utf-8")
            // 写入数据
            response.write(data)
            // 最后执行end
            response.end()
        })
    
    }
    else if(request.url == '/111www.jpg'){
        fs.readFile(path.join(__dirname,"111www.jpg"),(err,data)=>{
            if(err) throw err
            
            response.setHeader("Content-type","image/jpeg;charset=utf-8")
            // 写入数据
            response.write(data)
            // 最后执行end
            response.end()
        })
    }
    else{
        const fpath =path.join(__dirname,url)
        fs.readFile(fpath,(err,data)=>{
            if(err) return response.end(err.message)
            response.end(data)
        })
    }
})

// 启动web服务监听http协议的端口（端口号自定义，不跟系统现有在用的端口冲突（8000））
server.listen(8222,()=>{
    console.log("服务器启动成功,访问http://localhost:8222")
})